
print("欢迎来到c1-1.py的pygame小游戏教学！\n")

# 一、知识点讲解
# 1. pygame是一个用来做游戏的Python库，可以让我们画图、显示图片、处理鼠标和键盘。
# 2. 这个程序会显示一张背景图片，当你用鼠标移动到特定区域时，会显示另一张图片。

# 二、代码结构与功能说明
# 1. 首先导入pygame和sys库，并初始化pygame。
# 2. 创建一个1000x600的窗口。
# 3. 定义了一个图片名字的列表name。
# 4. 用for循环加载所有图片到k列表里。
# 5. 先把第一张图片（背景）显示出来。
# 6. 进入主循环，监听事件：
#    - 如果点击关闭按钮，退出程序。
#    - 如果鼠标移动，重新显示背景，并判断鼠标是否在指定区域，如果在，就显示另一张图片。

# 三、代码示例讲解
import pygame
import sys
pygame.init()
s=pygame.display.set_mode((1000,600))
name=["bg","for","list","random","function","box","lose","win","m0","m1"]
k=[]
for i in name:
   p=pygame.image.load("images/%s.png"%(i)) #加载
   k.append(p) #列表末尾插入元素
s.blit(k[0],(0,0))
pygame.display.update() #更新
while True:
    for e in pygame.event.get(): #核心函数，用于获取并处理用户输入事件
        if e.type==pygame.QUIT: #检测用户是否点击了窗口的关闭按钮
            sys.exit()
        if e.type==pygame.MOUSEMOTION: #检测鼠标移动事件
            s.blit(k[0],(0,0))
            x=e.pos[0] #用于获取鼠标事件中鼠标横坐标
            y=e.pos[1] #用于获取鼠标事件中鼠标纵坐标
            print("x坐标%d,y坐标%d"%(x,y))
            if 230<x<340 and 105<y<250:
                s.blit(k[2],(0,0))
            pygame.display.update()

# 四、练习题
print("\n【练习题】")
print("1. 修改代码，让鼠标移动到不同区域时，显示不同的图片（比如k[3]、k[4]等）")
print("2. 尝试增加一个区域，显示你喜欢的图片，并打印提示信息。")

# 五、答案解析
print("\n【答案解析】")
print("1. 你可以增加elif判断，比如：")
print("   if 230<x<340 and 105<y<250:")
print("       s.blit(k[2],(0,0))")
print("   elif 400<x<500 and 200<y<300:")
print("       s.blit(k[3],(0,0))")
print("2. 增加一个区域：")
print("   elif 600<x<700 and 100<y<200:")
print("       s.blit(k[4],(0,0))\n       print('你发现了隐藏图片！')")
print("试着多玩一玩，看看还能做出什么有趣的效果吧！") 